The conceptual design of a vehicle such as an aircraft or a space launch vehicle typically involves a set of design tradeoff studies or trade studies wherein numerous system configurations and criteria may be considered. In order to arrive at an optimal design, it is desirable to evaluate a wide variety of candidate design concepts from the standpoint of vehicle performance, cost, reliability, and a variety of other factors across multiple disciplines. The evaluation of candidate design concepts may be implemented in a computational procedure such as in a constraint network wherein, as known in the art, a mathematical relationship between several variables in the constraint network allows for the computation of the value of any one of the variables given the values of the relevant independent variables, as determined by the constraint network. In design trade studies, the evaluation of candidate design concepts may involve large quantities of algebraic equations representing constraints among design, performance, and cost variables.
In the classical implementation of a constraint network for trade study applications, the set of algebraic equations is static such that every equation is satisfied all the time. In addition, alternative computational methods are embedded in selected equations such as in the following representation for determining the aerodynamic drag of an aircraft:dragPlane=If(CanardIsPresent,dragBody_CanardAttached(FuselageSize)+dragCanard(CanardSize),dragBody_NoCanard(FuselageSize))
Unfortunately, embedding computational methods in equations such as in the above-noted representation can be cumbersome for a modeler of complex systems involving many different configurations. Furthermore, embedding computational methods in equations may prevent the performance of certain types of trade studies that require the reversal of the computational flow.
An alternative to embedding computational methods in equations is to make the applicability of any given equation dependent upon the computational state determined by the same constraint network. An important property of constraint network modeling is the separation of computational planning (i.e., determining the ordered sequence of computational steps, or a computational path through the network, during the performance of a given trade study) from the numerical solution of the constraint sets in the computational path. Such separation of planning of computational paths is essential for providing a system designer with relatively rapid feedback during a trade study. This, in turn, allows the system designer to explore a wide variety of design spaces during a trade study.
In the case where the applicability of each equation is not static and is instead data-dependent, an effective technique for modeling such data dependence is to attach to each equation a propositional form, or a well-formed formula (WFF), which depends upon the data in the network, and which, if such WFF evaluates to true, means that the equation is applicable in the given situation. In this regard, each WFF has a truth value defining a set of worlds where the WFF is true.
The computational plan in a data-dependent network may also be modeled as an ordered sequence of computational steps. In such an arrangement, each computational step is associated with a propositional form or a WFF which depends upon the data in the network and upon the results computed in the previous computational steps, and which, if the WFF evaluates to true, means that the computational step is evaluated in the given situation. The WFFs associated with each computational step may be obtained by different combinations of union, intersection, and difference operators to the WFFs associated with the equations that need to be solved. Such WFFs can become highly complex, depending upon which variables in the constraint network are independent, and require rapid manipulation and combination of such propositional WFFs. The WFFs obtained through combinations of other WFFs require simplification for efficient computation during trade studies. In this regard, leaving combinations of WFFs in an un-simplified state may result in exploding memory size as the WFFs are further combined in relatively large networks involving thousands of equations. Furthermore, when a WFF simplifies to a universally false WFF, the computational plan generation procedure can prune unneeded branches of a constraint network and thereby produce compact and efficient computational plans.
Such WFF simplification process may be extremely computationally intensive when applied to logic formulas having a large quantity of predicates over finite but large domains. The classical algorithms for determining the conjunctive normal forms of a WFF or the disjunctive normal forms of a WFF are inadequate to provide the system designer with computational results in a relatively short period of time (e.g., several minutes). The simplification of WFFs is preferably performed as rapidly as possible in order to reduce computational time and increase the amount of time available to a system designer to consider and investigate different design trades. A reduction in the amount of time for simplifying well-formed formulas may additionally provide a system designer with the capability to investigate larger and more complex design spaces.
For example, in the conceptual design of a hypersonic vehicle, a constraint management planning algorithm is required to simplify many WFFs containing numerous references to a large quantity of predicates during the planning of one of many desired trade studies. An example WFF may have only 10 to 15 predicates with each predicate having two to 20 possible values. Such WFFs may syntactically refer to the same predicates 5 to 10 times with a depth on a similar scale (e.g., And(Or(And Or(P1=−p11, P2=p21 . . . ) . . . Or(And(P1=p13, Or(Not(P1=p13) . . . )))) etc. Unfortunately, the simplification of such WFFs to a conjunctive normal form or a disjunctive normal form using classical algorithms requires 10 to 30 minutes of computer time in one implementation. The relatively long period of computer time for simplifying WFFs using classical algorithms directly detracts from the time available to a designer for considering and investigating different design trades.
As can be seen, there exists a need in the art for a system and method for reducing the amount of time required to simplify well-formed logic formulas in a logic-dependent system such as in a constraint network.